package com.assignwork.mapper;

import com.assignwork.dto.AssignWorkDTO;
import com.assignwork.dto.LineAuditDTO;
import com.assignwork.dto.WorkArrangeShipSearchDTO;
import com.assignwork.entity.WorkArrangeShip;
import com.assignwork.vo.*;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @ClassName WorkArrangeShipMapper
 * @Description 航运配工
 * @Author dujianyu
 * @Date 2023/12/21 15:46
 */
public interface WorkArrangeShipMapper extends BaseMapper<WorkArrangeShip> {
    /**
     * 分页
     * @param dto 搜索条件
     * @param page 分页
     * @return List<WorkArrangeShipPageVO>
     * @author dujianyu
     * @since 2023/12/21 16:05
     */
    List<WorkArrangeShipPageVO> selectWaShipList(@Param("dto") WorkArrangeShipSearchDTO dto, IPage page);

    List<WorkArrangeShipVO> listWorkArrangeShip(@Param("dto") AssignWorkDTO dto);

    /**
     * 计划信息
     * @param dto 搜索条件
     * @return PlanInfoVO
     * @author dujianyu
     * @since 2024/2/27 15:57
     */
    PlanInfoVO selectGetPlanInfo(@Param("dto") WorkArrangeShipSearchDTO dto);

    /**
     * 返回一条队组ID
     * @param dto 搜索条件
     * @return Long
     * @author dujianyu
     * @since 2024/4/16 15:39
     */
    Long selectOneExistTeamId(@Param("dto") WorkArrangeShipSearchDTO dto);

    List<WorkArrangeShipMobileVO> listWorkArrange4Mobile(IPage page, @Param("dto")LineAuditDTO dto);

    WorkArrangeInfoVO arrangeInfoByArrangeId(Long arrangeId);
}
